La creación de un archivo keytab para el servicio Squid

Puede utilizar la misma cuenta de usuario para la autenticación en todos los nodos de un clúster. Para hacerlo, tiene que crear un archivo keytab que contenga el nombre de entidad de servicio (SPN) por cada uno de estos nodos. Al crear un archivo keytab, debe utilizar el atributo para generar una sal (modificador de la función de hash).

La sal generada se debe guardar mediante un método de su elección para añadir posteriormente nuevos SPN al archivo keytab.

También puede crear una cuenta de usuario de Active Directory distinta para cada nodo de clúster para el que desee configurar la autenticación Kerberos.

El archivo keytab se crea en el servidor del controlador de dominio o en un equipo con Windows Server que forma parte del dominio, bajo una cuenta de administrador de dominio.

Para crear un archivo keytab para el servicio Squid utilizando una sola cuenta de usuario:

  1. En el complemento de Usuarios y equipos de Active Directory, cree una cuenta de usuario con el nombre squid-user.
  2. Para utilizar el algoritmo de cifrado AES256-SHA1, haga lo siguiente en el complemento de Usuarios y equipos de Active Directory:
    1. Abra las propiedades de la cuenta creada.
    2. En la pestaña Cuenta, seleccione la casilla de verificación Esta cuenta admite el cifrado AES de 256 bits de Kerberos.
  3. Cree un archivo keytab para squid-user utilizando la herramienta ktpass. Para hacerlo, ejecute el siguiente comando en la línea de comandos:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de servidor con el servicio Squid>@<nombre de dominio kerberos de Active Directory en mayúsculas> -mapuser squid-user@<nombre de dominio kerberos de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out <ruta al archivo>\<nombre del archivo>.keytab

    El nombre del servidor que aloja el servicio Squid debe especificarse en minúsculas (por ejemplo, proxy.company.com).

    La herramienta le pide la contraseña de squid-user cuando ejecuta el comando.

    La entrada SPN del nodo Control se añadirá al archivo keytab creado. Se muestra la sal generada: Hash de contraseña con sal "<valor hash>".

  4. Por cada nodo del clúster, añada una entrada SPN al archivo keytab. Para hacerlo, ejecute el comando siguiente:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo>@<nombre de dominio kerberos de Active Directory en mayúsculas> -mapuser squid-user@<nombre de dominio kerberos de Active Directory en mayúsculas> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <ruta y nombre del archivo creado anteriormente>.keytab -out <ruta y nombre nuevo>.keytab -setupn -setpass -rawsalt "<<valor hash de la sal obtenida al crear el archivo keytab en el paso 3>"

    La herramienta le pide la contraseña de squid-user cuando ejecuta el comando.

Se creará el archivo keytab para el servicio Squid. El archivo contendrá los SPN de los nodos de clúster.

Ejemplo:

Por ejemplo, debe crear un archivo keytab que contenga los SPN de 3 nodos: control-01.test.local, secondary-01.test.local y secondary-02.test.local.

Para crear un archivo llamado filename1.keytab que contenga el SPN del nodo Control en la carpeta C:\keytabs\, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser squid-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * +dumpsalt -out C:\keytabs\filename1.keytab

Supongamos que tiene la sal "TEST.LOCALHTTPcontrol-01.test.local".

Para añadir un SPN más, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser squid-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Para añadir un tercer SPN, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser squid-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab -setupn -setpass -rawsalt "TEST.LOCALHTTPcontrol-01.test.local"

Como resultado, se creará un archivo llamado filename3.keytab con tres SPN añadidos.

Para crear un archivo keytab para el servidor usando una cuenta independiente para cada nodo:

  1. En el complemento de Usuarios y equipos de Active Directory cree una cuenta de usuario independiente para cada nodo de clúster (por ejemplo, cuentas de usuario con nombres como squid-user, squid-user2, squid-user3, etc.).
  2. Para utilizar el algoritmo de cifrado AES256-SHA1, haga lo siguiente en el complemento de Usuarios y equipos de Active Directory:
    1. Abra las propiedades de la cuenta creada.
    2. En la pestaña Cuenta, seleccione la casilla de verificación Esta cuenta admite el cifrado AES de 256 bits de Kerberos.
  3. Cree un archivo keytab para squid-user utilizando la herramienta ktpass. Para hacerlo, ejecute el siguiente comando en la línea de comandos:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre en minúsculas de servidor con el servicio Squid>@<nombre de dominio kerberos de Active Directory en mayúsculas> -mapuser squid-user@<nombre de dominio kerberos de Active Directory en mayúsculas> --crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out <ruta al archivo>\<nombre del archivo>.keytab

    El nombre del servidor que aloja el servicio Squid debe especificarse en minúsculas (por ejemplo, proxy.company.com).

    La herramienta le pide la contraseña de squid-user cuando ejecuta el comando.

    La entrada SPN del nodo Control se añadirá al archivo keytab creado.

  4. Por cada nodo del clúster, añada una entrada SPN al archivo keytab. Para hacerlo, ejecute el comando siguiente:

    C:\Windows\system32\ktpass.exe -princ HTTP/<nombre de dominio completo (FQDN) del nodo>@<nombre de dominio kerberos de Active Directory en mayúsculas>> -mapuser squid-user2@<nombre de dominio kerberos de Active Directory en mayúsculas>> -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in <ruta y nombre del archivo creado anteriormente>.keytab -out <ruta y nombre nuevo>.keytab

    La herramienta le pide la contraseña de squid-user2 cuando ejecuta el comando.

Se creará el archivo keytab para el servicio Squid. El archivo contendrá los SPN de los nodos de clúster.

Ejemplo:

Por ejemplo, debe crear un archivo keytab que contenga los SPN de 3 nodos: control-01.test.local, secondary-01.test.local y secondary-02.test.local.

Para crear un archivo llamado filename1.keytab que contenga el SPN del nodo Control en la carpeta C:\keytabs\, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/control-01.test.local@TEST.LOCAL -mapuser squid-user@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -out C:\keytabs\filename1.keytab

Para añadir un SPN más, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-01.test.local@TEST.LOCAL -mapuser squid-user2@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename1.keytab -out C:\keytabs\filename2.keytab

Para añadir un tercer SPN, debe ejecutar el siguiente comando:

C:\Windows\system32\ktpass.exe -princ HTTP/secondary-02.test.local@TEST.LOCAL -mapuser squid-user3@TEST.LOCAL -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL -pass * -in C:\keytabs\filename2.keytab -out C:\keytabs\filename3.keytab

Como resultado, se creará un archivo llamado filename3.keytab con tres SPN añadidos.

Inicio de página